func lemonadeChange(bills []int) bool {
    fiveCount := 0
    tenCount := 0
    for _, m := range bills {
        if m == 5 {
            fiveCount ++
        }
        if m == 10 {
            tenCount++
            if fiveCount > 0 {
                fiveCount--
            } else {
                return false
            }
        }
        if m == 20 {
            if fiveCount > 0 && tenCount > 0 { // 利用贪心，如果来了20，有十块先找十块
                fiveCount--
                tenCount--
            } else if fiveCount >= 3 {
                fiveCount -= 3
            } else {
                return false
            }
        }
    }
    return true
}